import { NgModule } from '@angular/core'
import { CommonModule } from '@angular/common'

import { ComponentsModule } from './components/components.module'
import { PipesModule } from './pipes/pipes.module'
import { ServicesModule } from './services/services.module'

import { CoolLocalStorage } from './coolStorage/cool-local-storage'
import { CoolServerStorage } from './coolStorage/cool-server-storage'
import { CoolSessionStorage } from './coolStorage/cool-session-storage'
import { HttpClientService } from './httpClient/http'
import { UtilsModule } from './utils/utils.module'
import { httpInterceptorProviders } from './httpClient/interceptor-config'
import { Toast } from 'ng-zorro-antd-mobile'

@NgModule({
  imports: [CommonModule, ComponentsModule, PipesModule, ServicesModule, UtilsModule],
  declarations: [],
  providers: [
    CoolLocalStorage,
    CoolServerStorage,
    CoolSessionStorage,
    HttpClientService,
    UtilsModule,
    httpInterceptorProviders,
    Toast
  ],
  exports: [ComponentsModule, PipesModule, ServicesModule, UtilsModule]
})
export class PublicModule {}
